package com.xjc.market.frame.util;

import javax.servlet.http.HttpSession;

import org.apache.commons.codec.digest.DigestUtils;

import com.xjc.infra.entity.ExecuteState;
import com.xjc.infra.exception.IFSException;
import com.xjc.market.acct.entity.UserObjectEntity;
import com.xjc.market.frame.entity.Constant;

/**
 * 工具类
 * @author liangcz
 * @Date   2017年9月18日 下午6:53:28
 * @version 1.0
 */
public class FrameUtil {
	/**
	 * 获取session中的userObject对象
	 * @author liangcz
	 * @date   2017年9月18日 下午6:56:19
	 * @return UserObjectEntity
	 */
    public static UserObjectEntity getUserObject(HttpSession session){
    	UserObjectEntity userObjectEntity = (UserObjectEntity) session.getAttribute(Constant.USER_SESSION_ID);
    	return userObjectEntity;
    }
    /**
     * MD5 加盐
     * @author liangcz
     * @date   2017年9月21日 下午3:17:54
     * @return String
     */
    public static String md5AddSalt(String md5Str,String salt){
    	return DigestUtils.md5Hex(salt + md5Str);
    }
    /**
     * 获取一个成功的ExecuteState
     * @author liangcz
     * @date   2017年9月21日 下午3:44:33
     * @return ExecuteState
     */
    public static ExecuteState getSuccessExcuteState(){
    	ExecuteState state = new ExecuteState();
    	state.setSuccess(true);
    	return state;
    }
    /**
     * IFSException 转化为 ExecuteState
     * @author liangcz
     * @date   2017年9月21日 下午3:49:47
     * @return ExecuteState
     */
    public static ExecuteState transferToExecuteState(IFSException e){
    	ExecuteState executeState = new ExecuteState();
    	executeState.setSuccess(false);
    	executeState.setErrorCode(e.getErrorCode());
    	executeState.setMessage(e.getMessage());
    	return executeState;
    }
}
